Conversational agent

ABSTRACT

A method includes converting a user&#39;s utterance to text; encapsulating the converted text in a rheme object; searching, for each of a plurality of topics, for keywords in the converted text; determining a relevancy metric for each of the plurality of topics based on such searching; selecting one or more topics based on determined relevancy metrics; comparing some or all of the converted text to names in one or more patient lists or databases; identifying a unique patient whose name is contained in the converted; attaching an indication of the identified patient to the rheme object; effecting an action based on the selected one or more topics and the attached patient indication; and saving the topic in a conversation history with a reference to the identified patient.

CROSS-REFERENCE TO RELATED APPLICATION

The present application is a U.S. nonprovisional patent application of,and claims priority under 35 U.S.C. § 119(e) to, U.S. provisional patentapplication Ser. No. 61/823,904, filed May 15, 2013, which provisionalpatent application is hereby incorporated herein by reference. Thepresent application further hereby incorporates herein by reference theAppendix attached hereto.

COPYRIGHT STATEMENT

All of the material in this patent document is subject to copyrightprotection under the copyright laws of the United States and othercountries. The copyright owner has no objection to the facsimilereproduction by anyone of the patent document or the patent disclosure,as it appears in official governmental records but, otherwise, all othercopyright rights whatsoever are reserved.

BACKGROUND OF THE INVENTION

The present invention generally relates to medical software and systemsand methodologies for interfacing with medical software.

Interacting with medical software conventionally requires that a userutilize an input device such as a mouse, keyboard, or touchscreen. Userinput via such devices can be useful, but can at times be impractical,slow, or inefficient.

The use of voice as an input for software is known in other contexts.For example, Apple's “Siri” is an intelligent personal assistant whichperforms tasks or otherwise responds to natural language.

A need exists for improvement in medical software and systems andmethodologies for interfacing with medical software. This and otherneeds are addressed by one or more aspects of the present invention.

SUMMARY OF THE INVENTION

The present invention includes many aspects and features. Moreover,while many aspects and features relate to, and are described in, thecontext of health care, the present invention is not limited to use onlyin this context, as will become apparent from the following summariesand detailed descriptions of aspects, features, and one or moreembodiments of the present invention.

Accordingly, one aspect of the present invention relates to softwareimplementing a conversational agent.

Another aspect relates to a method which includes converting a user'sutterance to text; encapsulating the converted text in a rheme object;searching, for each of a plurality of topics, for keywords in theconverted text; determining a relevancy metric for each of the pluralityof topics based on such searching; selecting one or more topics based ondetermined relevancy metrics; comparing some or all of the convertedtext to names in one or more patient lists or databases; identifying aunique patient whose name is contained in the converted; attaching anindication of the identified patient to the rheme object; effecting anaction based on the selected one or more topics and the attached patientindication; and saving the topic in a conversation history with areference to the identified patient.

Another aspect relates to a method comprising receiving, from a user ofan electronic device via a microphone of the electronic device, a firstutterance corresponding to a first spoken command, the first spokencommand identifying a first patient; converting, utilizing one or moreprocessors, the first utterance to first text; encapsulating, utilizingone or more processors, the converted first text in a first rhemeobject; searching, for each of a plurality of topics utilizing one ormore processors, for keywords in the converted first text; determining,utilizing one or more processors, a relevancy metric for each of theplurality of topics based on the keyword searching of the convertedfirst text; selecting, utilizing one or more processors, one or moretopics as a first set of one or more relevant topics based on thedetermined relevancy metrics; comparing, utilizing one or moreprocessors, some or all of the converted first text to names in one ormore patient lists or databases; determining, utilizing one or moreprocessors based on comparing some or all of the converted first text,that the first utterance included an identification of the firstpatient; attaching, utilizing one or more processors, an indication ofthe identified first patient to the rheme object; displaying, to theuser via a display device associated with the electronic device, firstinformation associated with the first patient based on the selectedfirst set of one or more relevant topics and the identified firstpatient; saving, utilizing one or more processors, the selected firstset of one or more relevant topics in a conversation history inassociation with the identified first patient; receiving, from the userof the electronic device via the microphone of the electronic device, asecond utterance corresponding to a second spoken command, the secondspoken command not including an identification of a patient; converting,utilizing one or more processors, the second utterance to second text;encapsulating, utilizing one or more processors, the converted secondtext in a second rheme object; searching, for each of a plurality oftopics utilizing one or more processors, for keywords in the convertedsecond text; determining, utilizing one or more processors, a relevancymetric for each of the plurality of topics based on the keywordsearching of the converted second text; selecting, utilizing one or moreprocessors, one or more topics as a second set of one or more relevanttopics based on the determined relevancy metrics; comparing, utilizingone or more processors, some or all of the converted second text tonames in the one or more patient lists or databases; determining,utilizing one or more processors based on comparing some or all of theconverted second text, that the second utterance did not include anidentification of a patient, and, based thereon, attaching an indicationof the previously identified first patient to the rheme object;displaying, to the user via the display device associated with theelectronic device, second information associated with the first patientbased on the selected second set of one or more relevant topics and theprevious identification of the first patient; and saving, utilizing oneor more processors, the selected second set of one or more relevanttopics in a conversation history in association with the previouslyidentified first patient.

In one or more preferred implementations, the method further includesreceiving, from the user of the electronic device via the microphone ofthe electronic device, a third utterance corresponding to a third spokencommand, the third spoken command identifying a second patient;converting, utilizing one or more processors, the third utterance tothird text; encapsulating, utilizing one or more processors, theconverted third text in a third rheme object; searching, for each of aplurality of topics utilizing one or more processors, for keywords inthe converted third text; determining, utilizing one or more processors,a relevancy metric for each of the plurality of topics based on thekeyword searching of the converted third text; selecting, utilizing oneor more processors, one or more topics as a third set of one or morerelevant topics based on the determined relevancy metrics; comparing,utilizing one or more processors, some or all of the converted thirdtext to names in one or more patient lists or databases; determining,utilizing one or more processors based on comparing some or all of theconverted third text, that the third utterance included anidentification of the second patient; attaching, utilizing one or moreprocessors, an indication of the identified second patient to the rhemeobject; displaying, to the user via the display device associated withthe electronic device, third information associated with the secondpatient based on the selected third set of one or more relevant topicsand the identified second patient; and saving, utilizing one or moreprocessors, the selected third set of one or more relevant topics in aconversation history in association with the identified second patient.Additionally, in some preferred implementations, the method furtherincludes receiving, from the user of the electronic device via themicrophone of the electronic device, a fourth utterance corresponding toa fourth spoken command, the fourth spoken command not including anidentification of a patient; converting, utilizing one or moreprocessors, the fourth utterance to fourth text; encapsulating,utilizing one or more processors, the converted fourth text in a fourthrheme object; searching, for each of a plurality of topics utilizing oneor more processors, for keywords in the converted fourth text;determining, utilizing one or more processors, a relevancy metric foreach of the plurality of topics based on the keyword searching of theconverted fourth text; selecting, utilizing one or more processors, oneor more topics as a fourth set of one or more relevant topics based onthe determined relevancy metrics; comparing, utilizing one or moreprocessors, some or all of the converted fourth text to names in the oneor more patient lists or databases; determining, utilizing one or moreprocessors based on comparing some or all of the converted fourth text,that the fourth utterance did not include an identification of apatient, and, based thereon, attaching an indication of the previouslyidentified second patient to the rheme object; displaying, to the uservia the display device associated with the electronic device, fourthinformation associated with the second patient based on the selectedfourth set of one or more relevant topics and the previousidentification of the second patient; and saving, utilizing one or moreprocessors, the selected fourth set of one or more relevant topics in aconversation history in association with the previously identifiedsecond patient.

In one or more preferred implementations, the electronic devicecomprises a mobile device.

In one or more preferred implementations, the electronic devicecomprises a tablet.

In one or more preferred implementations, the electronic devicecomprises a phone.

In one or more preferred implementations, the electronic devicecomprises a laptop.

In one or more preferred implementations, the electronic devicecomprises a desktop.

In one or more preferred implementations, the display device associatedwith the electronic device comprises a touchscreen.

In one or more preferred implementations, the display device associatedwith the electronic device comprises a monitor.

In one or more preferred implementations, the display device associatedwith the electronic device comprises a television.

In one or more preferred implementations, converting, utilizing one ormore processors, the first utterance to first text is performed at theelectronic device.

In one or more preferred implementations, converting, utilizing one ormore processors, the first utterance to first text is performed remotefrom the electronic device.

In one or more preferred implementations, converting, utilizing one ormore processors, the first utterance to first text is performed at afirst server remote from the electronic device. Further, in someimplementations, encapsulating, utilizing one or more processors, theconverted first text in a first rheme object is performed at the firstserver. On the other hand, in some implementations, encapsulating,utilizing one or more processors, the converted first text in a firstrheme object is performed at a second server.

In one or more preferred implementations, displaying first informationassociated with the first patient comprises displaying resultsassociated with the first patient.

In one or more preferred implementations, each of the determinedrelevancy metrics comprises a numerical score.

Another aspect relates to a method which includes receiving, from a userof an electronic device via a microphone of the electronic device, anutterance corresponding to a spoken command, the spoken commandidentifying a first patient; converting, utilizing one or moreprocessors, the utterance to text; encapsulating, utilizing one or moreprocessors, the converted text in a rheme object; searching, for each ofa plurality of topics utilizing one or more processors, for keywords inthe converted text; determining, utilizing one or more processors, arelevancy metric for each of the plurality of topics based on thekeyword searching; selecting, utilizing one or more processors, one ormore topics as one or more relevant topics based on the determinedrelevancy metrics; comparing, utilizing one or more processors, some orall of the converted text to names in one or more patient lists ordatabases; determining, based on such comparing, that the utteranceincluded an identification of the first patient; attaching, utilizingone or more processors, an indication of the identified first patient tothe rheme object; displaying, to the user via a display deviceassociated with the electronic device, information associated with thefirst patient based on the selected one or more topics and theidentified first patient; and saving, utilizing one or more processors,the selected one or more topics in a conversation history in associationwith the identified first patient.

Another aspect relates to a method which includes receiving, from a userof an electronic device via a microphone of the electronic device, anutterance corresponding to a spoken command, the spoken commandidentifying a first patient; converting, utilizing one or moreprocessors, the utterance to text; encapsulating, utilizing one or moreprocessors, the converted text in a rheme object; searching, for each ofa plurality of topics utilizing one or more processors, for keywords inthe converted text; determining, utilizing one or more processors, arelevancy metric for each of the plurality of topics based on thekeyword searching; selecting, utilizing one or more processors, one ormore topics as one or more relevant topics based on the determinedrelevancy metrics; comparing, utilizing one or more processors, some orall of the converted text to names in one or more patient lists ordatabases; determining, based on such comparing, that the utteranceincluded an identification of the first patient; attaching, utilizingone or more processors, an indication of the identified first patient tothe rheme object; effecting, utilizing one or more processors, an actionbased on the selected one or more topics and the identified firstpatient; and saving, utilizing one or more processors, the selected oneor more topics in a conversation history in association with theidentified first patient.

In addition to the aforementioned aspects and features of the presentinvention, it should be noted that the present invention furtherencompasses the various possible combinations and subcombinations ofsuch aspects and features. Thus, for example, any aspect may be combinedwith an aforementioned feature in accordance with the present inventionwithout requiring any other aspect or feature.

BRIEF DESCRIPTION OF THE DRAWINGS

One or more preferred embodiments of the present invention now will bedescribed in detail with reference to the accompanying drawings, whereinthe same elements are referred to with the same reference numerals, andwherein:

FIG. 1 illustrates topics corresponding to a conversational agent;

FIG. 2 provides an exemplary illustration of processing of transcribedtext;

FIG. 3 illustrates an exemplary user interface for software inaccordance with one or more preferred implementations;

FIG. 4 illustrates presentation of results in response to a user's queryfor results;

FIG. 5 illustrates an exemplary methodology for responding to a user'squery;

FIG. 6 illustrates a user query for abnormal results;

FIG. 7 illustrates the presentation of abnormal results in response tothe query of FIG. 6;

FIG. 8 illustrates the use of a previous reference to a patient ascontext for a subsequent utterance;

FIG. 9 illustrates the use of a previous reference to a patient for afirst topic as context for an utterance corresponding to a second topic;

FIG. 10 illustrates an exemplary methodology for use of a previousreference to a patient as context for a subsequent utterance;

FIG. 11 illustrates a user query for information regarding anotherpatient;

FIG. 12 illustrates an exemplary interface for disambiguation accessedfollowing the user query illustrated in FIG. 11;

FIG. 13 illustrates presentation of results in response to the userquery in FIG. 11;

FIG. 14 illustrates an exemplary methodology involving disambiguation;

FIG. 15 illustrates an exemplary methodology for utilizing context withrespect to a previously utilized topic; and

FIGS. 16-17 illustrate prompting of a user for the name of a patient forwhich the user would like to view allergy information.

DETAILED DESCRIPTION

As a preliminary matter, it will readily be understood by one havingordinary skill in the relevant art (“Ordinary Artisan”) that the presentinvention has broad utility and application. As should be understood,any embodiment may incorporate only one or a plurality of theabove-disclosed aspects of the invention and may further incorporateonly one or a plurality of the above-disclosed features. Furthermore,any embodiment discussed and identified as being “preferred” isconsidered to be part of a best mode contemplated for carrying out thepresent invention. Other embodiments also may be discussed foradditional illustrative purposes in providing a full and enablingdisclosure of the present invention. As should be understood, anyembodiment may incorporate only one or a plurality of theabove-disclosed aspects of the invention and may further incorporateonly one or a plurality of the above-disclosed features. Moreover, manyembodiments, such as adaptations, variations, modifications, andequivalent arrangements, will be implicitly disclosed by the embodimentsdescribed herein and fall within the scope of the present invention.

Accordingly, while the present invention is described herein in detailin relation to one or more embodiments, it is to be understood that thisdisclosure is illustrative and exemplary of the present invention, andis made merely for the purposes of providing a full and enablingdisclosure of the present invention. The detailed disclosure herein ofone or more embodiments is not intended, nor is to be construed, tolimit the scope of patent protection afforded the present invention,which scope is to be defined by the claims and the equivalents thereof.It is not intended that the scope of patent protection afforded thepresent invention be defined by reading into any claim a limitationfound herein that does not explicitly appear in the claim itself.

Thus, for example, any sequence(s) and/or temporal order of steps ofvarious processes or methods that are described herein are illustrativeand not restrictive. Accordingly, it should be understood that, althoughsteps of various processes or methods may be shown and described asbeing in a sequence or temporal order, the steps of any such processesor methods are not limited to being carried out in any particularsequence or order, absent an indication otherwise. Indeed, the steps insuch processes or methods generally may be carried out in variousdifferent sequences and orders while still falling within the scope ofthe present invention. Accordingly, it is intended that the scope ofpatent protection afforded the present invention is to be defined by theappended claims rather than the description set forth herein.

Additionally, it is important to note that each term used herein refersto that which the Ordinary Artisan would understand such term to meanbased on the contextual use of such term herein. To the extent that themeaning of a term used herein—as understood by the Ordinary Artisanbased on the contextual use of such term—differs in any way from anyparticular dictionary definition of such term, it is intended that themeaning of the term as understood by the Ordinary Artisan shouldprevail.

Regarding applicability of 35 U.S.C. § 112, ¶6, no claim element isintended to be read in accordance with this statutory provision unlessthe explicit phrase “means for” or “step for” is actually used in suchclaim element, whereupon this statutory provision is intended to applyin the interpretation of such claim element.

Furthermore, it is important to note that, as used herein, “a” and “an”each generally denotes “at least one,” but does not exclude a pluralityunless the contextual use dictates otherwise. Thus, reference to “apicnic basket having an apple” describes “a picnic basket having atleast one apple” as well as “a picnic basket having apples.” Incontrast, reference to “a picnic basket having a single apple” describes“a picnic basket having only one apple.”

When used herein to join a list of items, “or” denotes “at least one ofthe items,” but does not exclude a plurality of items of the list. Thus,reference to “a picnic basket having cheese or crackers” describes “apicnic basket having cheese without crackers”, “a picnic basket havingcrackers without cheese”, and “a picnic basket having both cheese andcrackers.” Finally, when used herein to join a list of items, “and”denotes “all of the items of the list.” Thus, reference to “a picnicbasket having cheese and crackers” describes “a picnic basket havingcheese, wherein the picnic basket further has crackers,” as well asdescribes “a picnic basket having crackers, wherein the picnic basketfurther has cheese.”

Referring now to the drawings, one or more preferred embodiments of thepresent invention are next described. The following description of oneor more preferred embodiments is merely exemplary in nature and is in noway intended to limit the invention, its implementations, or uses.

One or more preferred embodiments relate to a patient-centricconversational agent that allows physicians to quickly access patientrecords using a natural language speech interface.

Such a conversational agent (CA), or dialogue system, is a computersystem that a user can communicate with to access data. In a preferredimplementation, the conversational agent uses both touch and speech asinput channels, while using both a graphical display and audio as outputchannels. The workflow preferably follows the conventions of a typicalhuman-to-human conversation, in that each participant in theconversation takes turns speaking. The conversational agent preferablykeeps track of its history of topics and the related patients.

In preferred implementations, the conversational agent uses knowledge ofpragmatics to facilitate intuitive interaction. For example, physicianscan request data about a patient mentioned in a previous statement(e.g., “How about orders for that patient?”). Additionally, physiciansneed not drill-down or drill-up to navigate patient data. Instead, theymay go directly to specific patient data from anywhere. For example, aclinician may say “Show me results for Sally Smith”, followedimmediately by “I'd like to cancel an order for Ronald Klein”. These twoactions might take a significantly longer time to access viaconventional input methodologies, such as, for example, touch.

In a preferred implementation, a patient-centric conversational agentutilizes a set of topics, as illustrated in FIG. 1. Topics representactions that the conversational agent is able to perform at the requestof the user (e.g. Display results, Discontinue Orders, Change PatientNotifications, etc). In some implementations, topics can becharacterized as the equivalent to “user-stories”.

Preferably, when a user utters a phrase, the words are first convertedto text by a speech recognition system (such as, for example, Nuance orM*Modal). The resulting text is encapsulated in an object, called arheme, for further processing by the conversational agent. Each topic inthe topic-set then has the opportunity to search for certain keywords inthe text phrase. Topics are chosen using a metric “relevancy” which is afunction of the number of keywords a given topic finds in transcribedtext.

FIG. 2 provides an exemplary illustration of processing of thetranscribed text “Show me all of the new results for Sally Smith fromthe last two weeks”. The phrases “Show”, “new”, “results”, and “last twoweeks” are highlighted as having significance to one or more topics. Thearrowed lines illustrate, for several exemplary topics, any words whichhave significance to that topic. The relevancy score for each topic isbased on the number of words that are found in the transcribed text thathave significance to that particular topic. In the illustrated example,the topic “Display patient results” would be found to be relevant anddisplay of such results would be effected. Notably, in one or morepreferred implementations, words or phrases can be found to triggerfilters for various topics. For example, the word “new” might cause onlynew results to be displayed in connection with a “Display patientresults” topic.

Additionally, the text phrase is searched by the conversational agentfor any name on a patient list or in a patient database. For example,for the transcribed text in FIG. 2, the phrase “Sally Smith” has beenidentified as representing the name of a patient. When a name is found,an identification of that patient is attached the rheme object.

In one or more preferred implementations, a conversational agent uses anemergent architecture and a connectionist approach that allows anynumber of patient-centric topics to be added to the agent. In one ormore preferred implementations, there are forty or more specializedtopics in use, with each having a basic purpose that a connectionistapproach is able to handle.

FIG. 3 illustrates an exemplary user interface for software inaccordance with one or more preferred implementations. A user caninteract with the software by, for example, uttering the phrase “Show meall results for Peter Eastman”. In response, the software processes theuser's utterance and presents, to the user, all results for Peter N.Eastman, as illustrated in FIG. 4.

An exemplary methodology for accomplishing this is illustrated in FIG.5. This exemplary methodology includes converting the user's utteranceto text at step 1001, encapsulating the converted text in a rheme objectat step 1002, searching, for each of a plurality of topics, for keywordsin the converted text at step 1003, determining a relevancy metric foreach of the plurality of topics based on such searching at step 1004,selecting one or more topics based on determined relevancy metrics atstep 1005, comparing some or all of the converted text to names in oneor more patient lists or databases at step 1006, identifying a uniquepatient whose name is contained in the converted text at step 1007,attaching an indication of the identified patient to the rheme object atstep 1008, effecting an action (in the exemplary case noted above,displaying results) based on the selected one or more topics and theattached patient indication at step 1009, and saving the topic in aconversation history with a reference to the identified patient at step1010.

When a topic is selected, that topic saves a reference to the specifiedpatient. The topic is then placed in a conversation history; this servesas context for the conversation. For example, when a new phrase isspoken by a user, the user preferably does not necessarily need tospecify the patient name again. Preferably, if the user says somethingsuch as “How about orders?”, the conversational agent will, upon failingto find a patient name in the new phrase, use the patient from theprevious topic.

For example, returning to the example of FIGS. 3-4, thereafter, the usermight further interact with the software by uttering the phrase “Howabout just the abnormal results”, as illustrated in FIG. 6. In response,the software processes the user's utterance and presents, to the user,all results for Peter N. Eastman, as illustrated in FIG. 7. FIG. 8illustrates the use of the previous reference to Peter Eastman ascontext for the subsequent utterance. FIG. 9 similarly illustrates theuse of a previous reference to John Smith for a first topic as contextfor an utterance corresponding to a second topic.

FIG. 10 illustrates an exemplary methodology for use of such a previousreference to a patient as context for a subsequent utterance. Thisexemplary methodology includes converting the user's utterance to textat step 2001, encapsulating the converted text in a rheme object at step2002, searching, for each of a plurality of topics, for keywords in theconverted text at step 2003, determining a relevancy metric for each ofthe plurality of topics based on such searching at step 2004, selectingone or more topics based on determined relevancy metrics at step 2005,comparing some or all of the converted text to names in one or morepatient lists or databases at step 2006, determining that no patientname is contained in the converted text at step 2007, identifying, basedon the conversation history, a last identified patient at step 2008,effecting an action based on the selected one or more topics and theidentified patient at step 2009, and saving the topic in a conversationhistory with a reference to the identified patient at step 2010.

A user can also change the patient while still on the same topic; inthis way they can apply the same data search to a different patient. Forexample, returning to the example of FIG. 7, thereafter, the user mightfurther interact with the software by uttering the phrase “Now how aboutfor Sally Smith”, as illustrated in FIG. 11.

In one or more preferred implementations, if there are multiple patientswith the same name, or a user's utterance is unclear or ambiguous, thenthe user is preferably provided information about a plurality ofpatients and asked to disambiguate which patient they were referring toby selecting a particular patient via touchscreen, voice, or otherinput. FIG. 12 illustrates an exemplary such interface fordisambiguation accessed following the user's utterance illustrated inFIG. 11. Upon selection by the user of a particular patient or visit,the software continues processing the user's utterance and presents, tothe user, all results for Sally Smith, as illustrated in FIG. 13.

An exemplary methodology for accomplishing this is illustrated in FIG.14. This exemplary methodology includes converting the user's utteranceto text at step 3001, encapsulating the converted text in a rheme objectat step 3002, searching, for each of a plurality of topics, for keywordsin the converted text at step 3003, determining a relevancy metric foreach of the plurality of topics based on such searching at step 3004,selecting one or more topics based on determined relevancy metrics atstep 3005, comparing some or all of the converted text to names in oneor more patient lists or databases at step 3006, identifying a pluralityof patients or visits that might correspond to the converted text atstep 3007, presenting, to the user, a list of the plurality of patientsor visits at step 3008, attaching an indication of the identifiedpatient to the rheme object at step 3009, effecting an action based onthe selected one or more topics and the attached patient indication atstep 3010, and saving the topic in a conversation history with areference to the identified patient at step 3011.

Just as the software preferably saves context related to a recentlysearched patient, in one or more preferred implementations, the softwarepreferably additionally saves context with respect to a previouslyutilized topic and allows a user to look up the same information foranother patient via an utterance of that patient's name. For example, auser could simply utter “Now how about for Jane Smith”.

An exemplary methodology for accomplishing this is illustrated in FIG.15. This exemplary methodology includes converting the user's utteranceto text at step 4001, encapsulating the converted text in a rheme objectat step 4002, searching, for each of a plurality of topics, for keywordsin the converted text at step 4003, determining a relevancy metric foreach of the plurality of topics based on such searching at step 4004,determining that no topics meet a minimum relevancy metric at step 4005,identifying, based on a conversation history, the last selected topic atstep 4006, comparing the converted text to names in one or more patientlists or databases at step 4007, identifying a unique patient whose nameis contained in the converted text at step 4008, attaching an indicationof the identified patient to the rheme object at step 4009, effecting anaction (in the exemplary case noted above, displaying results) based onthe selected one or more topics and the attached patient indication atstep 4010, and saving the topic in a conversation history with areference to the identified patient at step 4011.

Notably, if there is no context available, the software may insteadprompt a user to provide additional information. For example, FIGS.16-17 illustrate prompting of a user for the name of a patient for whichthe user would like to view allergy information.

Based on the foregoing description, it will be readily understood bythose persons skilled in the art that the present invention issusceptible of broad utility and application. Many embodiments andadaptations of the present invention other than those specificallydescribed herein, as well as many variations, modifications, andequivalent arrangements, will be apparent from or reasonably suggestedby the present invention and the foregoing descriptions thereof, withoutdeparting from the substance or scope of the present invention.Accordingly, while the present invention has been described herein indetail in relation to one or more preferred embodiments, it is to beunderstood that this disclosure is only illustrative and exemplary ofthe present invention and is made merely for the purpose of providing afull and enabling disclosure of the invention. The foregoing disclosureis not intended to be construed to limit the present invention orotherwise exclude any such other embodiments, adaptations, variations,modifications or equivalent arrangements, the present invention beinglimited only by the claims appended hereto and the equivalents thereof.

What is claimed is:
 1. A processor-based method for operating anelectronic device configured to function as an agent for a userinterface in a medical environment utilizing conversation histories, themethod comprising: (a) receiving, from a user of the electronic devicevia a microphone of the electronic device, a first utterancecorresponding to a first spoken command, the first spoken commandidentifying a first patient; (b) converting, utilizing one or moreprocessors, the first utterance to first text; (c) encapsulating,utilizing one or more processors, the converted first text in a firstrheme object; (d) searching, for each of a plurality of topics utilizingone or more processors, for keywords in the converted first text; (e)determining, utilizing one or more processors, a relevancy metric foreach of the plurality of topics based on the keyword searching of theconverted first text; (f) selecting, utilizing one or more processors,one or more topics as a first set of one or more relevant topics basedon the determined relevancy metrics; (g) comparing, utilizing one ormore processors, some or all of the converted first text to names in oneor more patient lists or databases; (h) determining, utilizing one ormore processors based on comparing some or all of the converted firsttext, that the first utterance included an identification of the firstpatient based on successful matching during the comparing of some or allof the converted first text; (i) based on the determination that thefirst utterance included an identification of the first patient,attaching, utilizing one or more processors, an indication of theidentified first patient to the first rheme object; (j) displaying, tothe user via a display device associated with the electronic device,first information associated with the first patient based on theselected first set of one or more relevant topics and the identifiedfirst patient; (k) saving, utilizing one or more processors, theselected first set of one or more relevant topics in a conversationhistory in association with the identified first patient; (l) receiving,from the user of the electronic device via the microphone of theelectronic device, a second utterance corresponding to a second spokencommand, the second spoken command not including an identification of apatient; (m) converting, utilizing one or more processors, the secondutterance to second text; (n) encapsulating, utilizing one or moreprocessors, the converted second text in a second rheme object; (o)searching, for each of the plurality of topics utilizing one or moreprocessors, for keywords in the converted second text; (p) determining,utilizing one or more processors, a relevancy metric for each of theplurality of topics based on the keyword searching of the convertedsecond text; (q) selecting, utilizing one or more processors, one ormore topics as a second set of one or more relevant topics based on thedetermined relevancy metrics; (r) comparing, utilizing one or moreprocessors, some or all of the converted second text to names in the oneor more patient lists or databases; (s) determining, utilizing one ormore processors based on comparing some or all of the converted secondtext, that the second utterance did not include an identification of apatient, and, based thereon, attaching an indication of the previouslyidentified first patient to the second rheme object; (t) displaying, tothe user via the display device associated with the electronic device,second information associated with the first patient based on theselected second set of one or more relevant topics and the previousidentification of the first patient; and (u) generating, via the one ormore processors, an updated conversation history comprising the selectedsecond set of one or more relevant topics associated with the previouslyidentified first patient.
 2. The processor-based method of claim 1,wherein the method further includes: (a) receiving, from the user of theelectronic device via the microphone of the electronic device, a thirdutterance corresponding to a third spoken command, the third spokencommand identifying a second patient; (b) converting, utilizing one ormore processors, the third utterance to third text; (c) encapsulating,utilizing one or more processors, the converted third text in a thirdrheme object; (d) searching, for each of a plurality of topics utilizingone or more processors, for keywords in the converted third text; (e)determining, utilizing one or more processors, a relevancy metric foreach of the plurality of topics based on the keyword searching of theconverted third text; (f) selecting, utilizing one or more processors,one or more topics as a third set of one or more relevant topics basedon the determined relevancy metrics; (g) comparing, utilizing one ormore processors, some or all of the converted third text to names in oneor more patient lists or databases; (h) determining, utilizing one ormore processors based on comparing some or all of the converted thirdtext, that the third utterance included an identification of the secondpatient; (i) attaching, utilizing one or more processors, an indicationof the identified second patient to the third rheme object; (j)displaying, to the user via the display device associated with theelectronic device, third information associated with the second patientbased on the selected third set of one or more relevant topics and theidentified second patient; and (k) saving, utilizing one or moreprocessors, the selected third set of one or more relevant topics in aconversation history in association with the identified second patient.3. The processor-based method of claim 2, wherein the method furtherincludes (a) receiving, from the user of the electronic device via themicrophone of the electronic device, a fourth utterance corresponding toa fourth spoken command, the fourth spoken command not including anidentification of a patient; (b) converting, utilizing one or moreprocessors, the fourth utterance to fourth text; (c) encapsulating,utilizing one or more processors, the converted fourth text in a fourthrheme object; (d) searching, for each of a plurality of topics utilizingone or more processors, for keywords in the converted fourth text; (e)determining, utilizing one or more processors, a relevancy metric foreach of the plurality of topics based on the keyword searching of theconverted fourth text; (f) selecting, utilizing one or more processors,one or more topics as a fourth set of one or more relevant topics basedon the determined relevancy metrics; (g) comparing, utilizing one ormore processors, some or all of the converted fourth text to names inthe one or more patient lists or databases; (h) determining, utilizingone or more processors based on comparing some or all of the convertedfourth text, that the fourth utterance did not include an identificationof a patient, and, based thereon, attaching an indication of thepreviously identified second patient to the fourth rheme object; (i)displaying, to the user via the display device associated with theelectronic device, fourth information associated with the second patientbased on the selected fourth set of one or more relevant topics and theprevious identification of the second patient; and (j) saving, utilizingone or more processors, the selected fourth set of one or more relevanttopics in a conversation history in association with the previouslyidentified second patient.
 4. The processor-based method of claim 1,wherein the electronic device comprises a mobile device.
 5. Theprocessor-based method of claim 1, wherein the electronic devicecomprises a tablet.
 6. The processor-based method of claim 1, whereinthe electronic device comprises a phone.
 7. The processor-based methodof claim 1, wherein the electronic device comprises a laptop.
 8. Theprocessor-based method of claim 1, wherein the electronic devicecomprises a desktop.
 9. The processor-based method of claim 1, whereinthe display device associated with the electronic device comprises atouchscreen.
 10. The processor-based method of claim 1, wherein thedisplay device associated with the electronic device comprises amonitor.
 11. The processor-based method of claim 1, wherein the displaydevice associated with the electronic device comprises a television. 12.The processor-based method of claim 1, wherein converting, utilizing oneor more processors, the first utterance to first text is performed atthe electronic device.
 13. The processor-based method of claim 1,wherein converting, utilizing one or more processors, the firstutterance to first text is performed remote from the electronic device.14. The processor-based method of claim 1, wherein converting, utilizingone or more processors, the first utterance to first text is performedat a first server remote from the electronic device.
 15. Theprocessor-based method of claim 14, wherein encapsulating, utilizing oneor more processors, the converted first text in a first rheme object isperformed at the first server.
 16. The processor-based method of claim14, wherein encapsulating, utilizing one or more processors, theconverted first text in a first rheme object is performed at a secondserver.
 17. The processor-based method of claim 1, wherein displayingfirst information associated with the first patient comprises displayingresults associated with the first patient.
 18. The processor-basedmethod of claim 1, wherein each of the determined relevancy metricscomprises a numerical score.
 19. A processor-based method for operatingan electronic device configured to function as an agent for a userinterface in a medical environment utilizing conversation histories, themethod comprising: (a) receiving, from a user of the electronic devicevia a microphone of the electronic device, a first utterancecorresponding to a first spoken command, the first spoken commandidentifying a first patient; (b) converting, utilizing one or moreprocessors, the first utterance to first text; (c) encapsulating,utilizing one or more processors, the converted first text in a firstrheme object; (d) searching, for each of a plurality of topics utilizingone or more processors, for keywords in the converted first text; (e)determining, utilizing one or more processors, a relevancy metric foreach of the plurality of topics based on the keyword searching of theconverted first text; (f) selecting, utilizing one or more processors,one or more topics as a first set of one or more relevant topics basedon the determined relevancy metrics; (g) comparing, utilizing one ormore processors, some or all of the converted first text to names in oneor more patient lists or databases; (h) determining, utilizing one ormore processors based on comparing some or all of the converted firsttext, that the first utterance included an identification of the firstpatient based on successful matching during the comparing of some or allof the converted first text; (i) based on the determination that thefirst utterance included an identification of the first patient,attaching, utilizing one or more processors, an indication of theidentified first patient to the first rheme object; (j) generating anddisplaying, to the user via a display device associated with theelectronic device, first information associated with the first patientbased on the selected first set of one or more relevant topics and theidentified first patient; (k) receiving, from the user of the electronicdevice via the microphone of the electronic device, a second utterancecorresponding to a second spoken command, the second spoken command notincluding an identification of a patient; (l) converting, utilizing oneor more processors, the second utterance to second text; (m)encapsulating, utilizing one or more processors, the converted secondtext in a second rheme object; (n) searching, for each of the pluralityof topics utilizing one or more processors, for keywords in theconverted second text; (o) determining, utilizing one or moreprocessors, a relevancy metric for each of the plurality of topics basedon the keyword searching of the converted second text; (p) selecting,utilizing one or more processors, one or more topics as a second set ofone or more relevant topics based on the determined relevancy metrics;(q) comparing, utilizing one or more processors, some or all of theconverted second text to names in the one or more patient lists ordatabases; (r) determining, utilizing one or more processors based oncomparing some or all of the converted second text, that the secondutterance did not include an identification of a patient, and, basedthereon, attaching an indication of the previously identified firstpatient to the second rheme object; and (s) generating and displaying,to the user via the display device associated with the electronicdevice, second information associated with the first patient based onthe selected second set of one or more relevant topics and the previousidentification of the first patient.
 20. A processor-based method foroperating a mobile device configured to function as an agent for a userinterface in a medical environment utilizing conversation histories, themethod comprising: (a) receiving, from a user of the mobile device via amicrophone of the mobile device, a first utterance corresponding to afirst spoken command, the first spoken command identifying a firstpatient; (b) converting, utilizing one or more processors remote fromthe mobile device, the first utterance to first text; (c) encapsulating,utilizing one or more processors, the converted first text in a firstrheme object; (d) searching, for each of a plurality of topics utilizingone or more processors, for keywords in the converted first text; (e)determining, utilizing one or more processors, a relevancy metric foreach of the plurality of topics based on the keyword searching of theconverted first text; (f) selecting, utilizing one or more processors,one or more topics as a first set of one or more relevant topics basedon the determined relevancy metrics; (g) comparing, utilizing one ormore processors, some or all of the converted first text to names in oneor more patient lists or databases; (h) determining, utilizing one ormore processors based on comparing some or all of the converted firsttext, that the first utterance included an identification of the firstpatient based on successful matching during the comparing of some or allof the converted first text; (i) based on the determination that thefirst utterance included an identification of the first patient,attaching, utilizing one or more processors, an indication of theidentified first patient to the first rheme object; (j) generating anddisplaying, to the user via a display device associated with the mobiledevice, first information associated with the first patient based on theselected first set of one or more relevant topics and the identifiedfirst patient; (k) receiving, from the user of the mobile device via themicrophone of the mobile device, a second utterance corresponding to asecond spoken command, the second spoken command not including anidentification of a patient; (l) converting, utilizing one or moreprocessors remote from the mobile device, the second utterance to secondtext; (m) encapsulating, utilizing one or more processors, the convertedsecond text in a second rheme object; (n) searching, for each of anotherplurality of topics utilizing one or more processors, for keywords inthe converted second text; (o) determining, utilizing one or moreprocessors, a relevancy metric for each of the another plurality oftopics based on the keyword searching of the converted second text; (p)selecting, utilizing one or more processors, one or more topics as asecond set of one or more relevant topics based on the determinedrelevancy metrics; (q) comparing, utilizing one or more processors, someor all of the converted second text to names in the one or more patientlists or databases; (r) determining, utilizing one or more processorsbased on comparing some or all of the converted second text, that thesecond utterance did not include an identification of a patient, and,based thereon, attaching an indication of the previously identifiedfirst patient to the second rheme object; and (s) generating anddisplaying, to the user via the display device associated with themobile device, second information associated with the first patientbased on the selected second set of one or more relevant topics and theprevious identification of the first patient.